iT邦幫忙

2025 iThome 鐵人賽

DAY 9
0
自我挑戰組

30天用Python打造你的數位金融實力:從零開始的FinTech入門筆記系列 第 9

用 Python 比較台積電ADR(TSM)與輝達(NVDA)的股價走勢

  • 分享至 

  • xImage
  •  

昨天,我們已經用 Python 畫過單一股票的趨勢圖。
今天我們升級一下,來比較兩家在半導體與 AI 產業中舉足輕重的公司:
台積電ADR(TSM) vs 輝達(NVDA)。

為什麼不用 2330.TW?
如果直接比較 2330.TW(台灣上市的台積電)和 NVDA,會有兩個問題:

  1. 幣別不同
    2330.TW 用 TWD,NVDA 用 USD,視覺比較會失真。
  2. 匯率波動影響
    股價漲跌可能部分來自匯率,而不是公司基本面。

解法很簡單:用 TSM(台積電的美國存託憑證,USD 計價)。
TSM 代表 5 股台積電普通股,價格已內建匯率轉換,非常適合與其他美股直接比較。

Python 程式碼

import yfinance as yf
import matplotlib.pyplot as plt

# 設定字體(讓中文能正常顯示)
plt.rcParams['font.family'] = 'Heiti TC'

# 要比較的兩檔股票:TSM(台積電ADR)、NVDA(輝達)
stocks = ['TSM', 'NVDA']

# 下載股價資料(已調整收盤價,USD 計價)
data = yf.download(stocks, start="2024-01-01", end="2025-01-01",
                   auto_adjust=True, group_by='column', progress=False)

# 取出收盤價
close = data['Close']

# 畫圖
plt.figure(figsize=(10,6))
for s in close.columns:
    plt.plot(close.index, close[s], label=s)

plt.title("TSM vs NVDA 股價走勢比較(已調整收盤價,USD)")
plt.xlabel("日期")
plt.ylabel("價格(USD)")
plt.legend()
plt.grid(True)
plt.tight_layout()
plt.show()

預期圖表觀察

  • TSM(台積電ADR):
    從約 100 USD 漲到 170-180 USD,漲幅顯著,尤其受惠 AI 晶片需求。
  • NVDA(輝達):
    從約 50 USD 漲到 140 USD,持續領先 AI 市場,漲勢驚人。

由於幣別已統一為 USD,圖上線條的高低差距更能反映兩家公司在市場估值的實際差異。

https://ithelp.ithome.com.tw/upload/images/20250814/20177983CDecebiKIv.png

小延伸:百分比比較
想看誰的漲幅更高,可以用百分比指數化:

norm = close / close.iloc[0] * 100
norm.plot(figsize=(10,6), grid=True, title="TSM vs NVDA 漲幅比較(基準日=100)")
plt.ylabel("漲幅指數(=100 起算)")
plt.tight_layout()
plt.show()

這樣即使股價數字不同,也能直接比較漲跌比例。

https://ithelp.ithome.com.tw/upload/images/20250814/20177983eLknOB3IW8.png

結語

  • 幣別統一是跨市場比較的關鍵,TSM直接省去匯率換算的麻煩。
  • 雖然NVDA單股價值在歷史趨勢上領先,但TSM作為AI晶片核心供應商,也展現強勁成長動能。
  • 風險提醒:股市有風險,本文數據僅作學習與歷史觀察,非投資建議。

上一篇
用 Python 繪製股票價格趨勢圖
下一篇
用 Python 做「加密貨幣歷史價格查詢」
系列文
30天用Python打造你的數位金融實力:從零開始的FinTech入門筆記28
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言